/**
 * 
 */
package cl.duocap.refaxion.view.bean;

import java.io.Serializable;
import java.util.List;

import javax.annotation.PostConstruct;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;

import cl.duocap.refaxion.dto.RepuestoDTO;
import cl.duocap.refaxion.servicios.RepuestoService;





/**
 * @author rentonx
 *
 */
@ManagedBean(name="mainRepuestoBean")
@SessionScoped
public class MainRepuestoBean implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private RepuestoDTO respuestoDto;
	private List<RepuestoDTO> listaRespuestos;
	private RepuestoDTO repuestoPorEliminar;

	/**
	 * 
	 */
	@PostConstruct
	public void iniciar(){
		if(FacesContext.getCurrentInstance().isPostback()){
			return;
		}
		//RepuestoService respuesto = new RepuestoService();
		//setListaRespuestos(respuesto.obtenerTodosRepuestos());
	}
	
	public String listarRespuestos(){
		
		try {		
			RepuestoService respuesto = new RepuestoService();
			setListaRespuestos(respuesto.obtenerTodosRepuestos());
			return "mainRepuesto.xhtml?faces-redirect=true";
			
		} catch (Exception e) {
			FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, e.getMessage(), e.getMessage()));
			System.out.println("errorLista Repuesto");
			return null;
		}	
	}

	public MainRepuestoBean() {
		
	}
	
	public void listanerEliminarRepuesto(RepuestoDTO repuestoEliminar){

		setRepuestoPorEliminar(repuestoEliminar);
		
	}
	
	public String confirmareliminarRepuesto(){

		try {

			RepuestoService respuesto = new RepuestoService();
			if(!respuesto.eliminarRepuesto(repuestoPorEliminar.getIdRepuesto())){
				return "mainRepuesto?faces-redirect=true";
			}else{
				return "mainRepuesto?faces-redirect=true";
			}
			
		} catch (Exception e) {
			FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, e.getMessage(), e.getMessage()));
			System.out.println("errorLista Usuarios");
			return "error";
		}	
			
	}
	
	public String listenerEditarRepuesto(String idRepuestoEditar){

		String url = "/mantenedor/repuesto/formRepuestoEditar?faces-redirect=true&idRepuesto=" + idRepuestoEditar;			
		return url;
	}
	
	
	public String listenerVerRepuesto(String idRepuestoVer){

		String url = "/mantenedor/repuesto/formRepuestoVer?faces-redirect=true&idRepuesto=" + idRepuestoVer;			
		return url;
	}




	public RepuestoDTO getRespuestoDto() {
		return respuestoDto;
	}

	public void setRespuestoDto(RepuestoDTO respuestoDto) {
		this.respuestoDto = respuestoDto;
	}

	public List<RepuestoDTO> getListaRespuestos() {
		return listaRespuestos;
	}

	public void setListaRespuestos(List<RepuestoDTO> listaRespuestos) {
		this.listaRespuestos = listaRespuestos;
	}

	public RepuestoDTO getRepuestoPorEliminar() {
		return repuestoPorEliminar;
	}

	public void setRepuestoPorEliminar(RepuestoDTO repuestoPorEliminar) {
		this.repuestoPorEliminar = repuestoPorEliminar;
	}

}
